#include "And.h"


/*
===============================================================================
 Name        : And.cpp
 Author      : Bram en Paul
 Version     : 0.1
 Description : OOPatronen
===============================================================================
*/

//Statisch voorbeeldobject.
Node* And::staticNode = new And("AND");


/**
 * Constructor
 */
And::And(string ID) : Node(ID)
{
	
}


/**
 * Constructor (alternative)
 */
And::And() : Node()
{
	
}


/**
 * Operation van And
 */
void And::operation()
{
	outputValue = inputs[0] & inputs[1];
	sendOperationResult();
}


/**
 * And wil 2 inputs!
 */
void And::checkInputQuantity()
{
	if (inputs.size() == 2) {
		operation();
	}
}


/**
 * Functie die een clone van de uitvoerende instantie uitvoert.
 */
Node* And::clone()
{
	return new And();
}


/**
 * Destructor
 */
And::~And()
{
	
}
